package visu;

import java.awt.Color;
import java.awt.Graphics;

/**
 * Définit ce que doit au minimum contenir une entité dessinable.
 * 
 * @author COLLET Philippe
 * @author gnpt
 */
public interface Dessinable extends Positionnable {
	/**
	 * Taille graphique de l'entité en pixels
	 */
	public static final int TAILLEGRAPHIQUE = 10;

	/**
	 * Accesseur pour la couleur de l'entité.
	 * 
	 * @return la couleur de l'entité.
	 */
	public Color getCouleur();

	/**
	 * Dessine l'entité sur le contexte graphique passé en paramètre.
	 * 
	 * @param g
	 *            contexte graphique sur lequel on dessine l'entité.
	 */
	public void seDessine(Graphics g);

	/**
	 * Mutateur pour la couleur de l'entité.
	 * 
	 * @param couleur
	 *            la nouvelle couleur de l'entité.
	 */
	void setCouleur(Color couleur);
}
